package com.yun.zf.common.app.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 优惠券表
 * </p>
 *
 * @author cj
 * @since 2021-05-31
 */
@TableName("sys_coupon")
@Data
public class SysCoupon implements Serializable {

    private static final long serialVersionUID = 1L;

      private Long id;

      /**
     * 活动id
     */
      private Long activityId;

      /**
     * 优惠券名称
     */
      private String title;

      /**
     * 副标题
     */
      private String subtitle;

      /**
     * 优惠类型1新人券、2满减券、3折扣券、4邀请券
     */
      private Integer type;

      /**
     * 满多少金额
     */
      @ApiModelProperty(value = "满多少使用，如果为-1，页面不显示")
      private BigDecimal withAmount;

      @ApiModelProperty(value = "优惠券金额")
      private BigDecimal usedAmount;

      /**
     * 发券数量
     */
      private Integer quota;

      /**
     * 折扣比例，类型为折扣时必填
     */
      private BigDecimal discount;

      /**
     * 有效期类型G固定，F 浮动
     */
      private String validityType;

      /**
     * 固定开始时间
     */
      @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
      private Date cStartTime;

      /**
     * 固定结束时间
     */
      @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
      private Date cEndTime;

      /**
     * 限制天数，领取当日开始N天有效
     */
      private int limitDay;

      /**
     * 状态 1 有效 2失效
     */
      private String status;

      /**
     * 描述说明
     */
      private String description;

      /**
     * 创建时间
     */
      @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
      private Date createTime;

      /**
     * 更新时间
     */
      @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
      private Date modifiedTime= new Date();


}
